package com.squid.monitor.service.redis;

import com.squid.monitor.model.request.InsertRedisListKeyRequest;
import com.squid.monitor.model.request.InsertRedisStringKeyRequest;

/**
 * redis服务
 *
 * @author jinhang1
 * @date 2024/07/24
 */
public interface RedisService {

    /**
     * 获得所有key
     *
     * @return {@link Object }
     */
    Object getAllKey();

    /**
     * 设置过期字符key
     *
     * @param req 要求事情
     */
    void setExpiredStringKey(InsertRedisStringKeyRequest req);

    /**
     * 获取字符串key
     *
     * @param key 关键
     * @return {@link Object }
     */
    Object getStringKey(String key);

    /**
     * 设置过期列表key
     *
     * @param req 要求事情
     */
    void setExpiredListKey(InsertRedisListKeyRequest req);

    /**
     * 获取列表key
     *
     * @param key 关键
     * @return {@link Object }
     */
    Object getListKey(String key);
}
